<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
        <title>InfinityJEEEU Java Code Generator</title>
        <link href="../css/default.css" rel="stylesheet" type="text/css" />
        <script type="text/javascript" src="../js/jquery-1.11.1.min.js"></script>
    </head>   
    <body>
        <div id="wrapper">
        <div id="header_wide">
    <div id="logo">
        <h1><a href="../html/index.html">无垠式Java通用代码生成器</a></h1>
        <h2><a href="../html/index.html">自2014年起为公众服务</a></h2>
    </div>
    <!-- end div#logo -->
    <!-- end div#menu -->
	</div>
            <!-- end div#header -->
            <div id="page_wide">
                <div id="content_wide">
	<h3>代码生成器技术乱弹八，系统族与笛卡尔空间</h3>
	<p>大家认为代码生成器是一个神奇的东西，有些人认为它是一种类似于传说中的阿拉丁神灯之类的魔幻工具，您只需要对神灯下达命令，就会有一个灯神出来，为您写好您需要的程序，这种神奇东西是存在的，只是您光使用代码生成器还是不够的。一个写程序的神灯不是代码生成器，而是一个程序员配上一套很好的代码生成器软件。</p>

	<p>好了，玩笑说完，我们谈论一下真实的代码生成器，在代码生成器研发的历史上，有一本书叫做《产生式编程》是一组德国人写的，他们没有写出可用的代码生成器，但是却整出了代码生成器的理论。我2004年买过这本书，而无垠式代码生成器是2014年得到可用的系统的。在这期间，曾经浏览过这本厚厚的书。</p>

	<p>书中对工业化，流水线，自动化生产提供了很好的思路和史实。其中提到了系统的思想。在代码生成器实现以后，我发现其中代码生成器的能力其实可以用系统族和系统族的笛卡尔空间表示，一个代码生成器可以产生的系统族的笛卡尔空间越大，其能力就越强。</p>

	<p>系统族是可以使用其动词算子的数量和域对象对字段限制的程度两个维度表示。在最新的无垠式代码生成器JEEEU版1.5中。共有ListAll, ListActive, SearchByFieldsByPage, SoftDelete, Delete, Add, Update, DeleteAll, SoftDeleteAll, Toggle, ToggleOne 11个单域动词和几个不完全的辅助性动词和ListMyActive, ListMyAvailableActive, Assign , Revoke四个双域动词组成。而域对象没有明确的字段限制只是要求每个域对象必须具有domainid, domainname, activefield 三个特殊字段。</p>

	<p>这约20个动词和域对象的可变性以及域对象之间的一对多和多对多关系。动词算子式代码生成器的变幻的笛卡尔空间是足够强大的。你只需要写下您的域对象清单和他们的规约，当然，不要忘了对它说一声call magic，你就可以得到系统族的馈赠，一个可以运行的一个子系统。</p>

	<p>代码生成器的生成空间就是代码生成器能生成的所有子系统的空间之和。也就是代码生成器的笛卡尔空间。根据上面的分析，无垠式代码生成器JEEEU版Ada 1.5的生成空间为（N-3)×20×3，我们可以简单记为60N，为字段，动词算子和关系三者的笛卡儿积。和平之翼代码生成器SMEU版3.1 乌篷船的生成空间为（N-3）×20×3×2，我们可以简记为120N，为字段，动词算子，关系和数据库类型四者的笛卡尔积。让我们群策群力，开发1000N级别(或者可以称之为1000倍率)的代码生成器吧。</p>
  </div>
                <!-- end div#content -->
                <div id="sidebar">
                    <!--ul-->
                    	<!-- Common Navigation Panel for our site -->
						<li id="submenu">
						    <h2>功能菜单</h2>
						    <ul>
						    　	<li><a href="../html/index.html">使用SGS生成代码</a></li>
						        <li><a href="../html/parseexcel.html">使用Excel生成代码</a></li>
						      	<li><a href="luantan_index.html">动词算子式代码生成器简介</a></li>
								<li><a href="luantan_1.html">代码生成器技术乱弹一，多对多关系与双域动词</a></li>
								<li><a href="luantan_2.html">代码生成器技术乱弹二，一对多关系的分析与实现</a></li>
								<li><a href="luantan_3.html">代码生成器技术乱弹三，所有字段搜索的主查询</a></li>
								<li><a href="luantan_4.html">代码生成器技术乱弹四，弹性万能界面</a></li>
								<li><a href="luantan_5.html">代码生成器技术乱弹五，动词算子浅析</a></li>
								<li><a href="luantan_6.html">代码生成器技术乱弹六，编译器在拈花微笑</a></li>
								<li><a href="luantan_7.html">代码生成器技术乱弹七，动词算子式代码生成器的透明性</a></li>
								<li><a href="luantan_8.html">代码生成器技术乱弹八，系统族与笛卡尔空间</a></li>
								<li><a href="luantan_9.html">代码生成器技术乱弹九，代码变变变，代码生成器之度量</a></li>
								<li><a href="luantan_10.html">代码生成器技术乱弹十，动词与多维空间，动词变格理论简述</a></li>
								<li><a href="luantan_11.html">代码生成器技术乱弹十一，伽罗华理论与代码生成器</a></li>
								<li><a href="luantan_12.html">代码生成器技术乱弹十二，步枪，T型车到代码生成器，模板法的工业魔术</a></li>

						    </ul>
						</li>
                    <!--/ul-->
                </div>
                <!-- end div#sidebar -->
                <div style="clear: both; height: 1px"></div>
            </div>
            <!-- Common footer for our site -->
			<div id="footer_wide">
			    <p id="legal">作者：火鸟  电邮:jerry_shen_sjf@qq.com QQ群:277689737<br/>
			    </p>
			</div>
        </div>
        <!-- end div#wrapper -->
</body>
</html>